مهندسی نیازمندی فرآیند تعریف، مستندسازی و حفظ الزامات است. این فرآیند جمع آوری و تعریف خدمات ارائه شده توسط سیستم است. فرآیند مهندسی نیازمندی ها شامل فعالیت های اصلی زیر است:
استخراج نیازمندی ها:
این مربوط به راه های مختلفی است که برای به دست آوردن دانش در مورد دامنه و الزامات پروژه استفاده می شود. منابع مختلف دانش حوزه شامل مشتریان، کتابچه راهنمای کسب و کار، نرم افزارهای موجود از همان نوع، استانداردها و سایر ذینفعان پروژه است.
تکنیک های مورد استفاده برای استخراج نیازمندی ها شامل مصاحبه، طوفان فکری، تجزیه و تحلیل کار، تکنیک دلفی، نمونه سازی اولیه و غیره است. برخی از این موارد در اینجا مورد بحث قرار می گیرند. استخراج مدل های رسمی از الزامات درک شده تولید نمی کند. درعوض، دانش دامنه تحلیلگر را گسترش می دهد و در نتیجه به ارائه ورودی به مرحله بعدی کمک می کند.
توجه خواننده! اکنون یادگیری را متوقف نکنید تمام مفاهیم مهم تئوری CS برای مصاحبه های SDE با دوره تئوری CS را با قیمت مناسب برای دانش آموز دریافت کنید و آماده صنعت شوید.
مشخصات مورد نیاز:
این فعالیت برای تولید مدل های رسمی نیاز نرم افزار استفاده می شود. تمامی الزامات اعم از الزامات عملکردی و غیرعملکردی و محدودیت ها به طور کلی توسط این مدل ها مشخص شده است. در طول مشخصات، ممکن است دانش بیشتری در مورد مشکل مورد نیاز باشد که می تواند دوباره فرآیند استخراج را آغاز کند.
مدل های مورد استفاده در این مرحله شامل نمودارهای ER، نمودارهای جریان داده (DFDs)، نمودارهای تجزیه تابع (FDDs)، دیکشنری داده ها و غیره است.
تایید و تایید الزامات:
تأیید: به مجموعه وظایفی اطلاق می شود که تضمین می کند نرم افزار عملکرد خاصی را به درستی پیاده سازی می کند.
اعتبار سنجی: به مجموعه متفاوتی از وظایف اشاره دارد که تضمین می کند نرم افزار ساخته شده مطابق با نیازهای مشتری قابل ردیابی است.
اگر الزامات اعتبار سنجی نشوند، خطاها در تعاریف نیازمندی ها به مراحل متوالی منتشر می شوند که منجر به تغییرات و دوباره کاری های زیادی می شود.
مراحل اصلی این فرآیند عبارتند از:
مدیریت نیازمندی ها:
مدیریت نیازمندی ها فرآیند تجزیه و تحلیل، مستندسازی، ردیابی، اولویت بندی و توافق بر روی نیازمندی ها و کنترل ارتباط با ذینفعان مربوطه است. این مرحله به تغییر ماهیت نیازمندی ها رسیدگی می کند. باید اطمینان حاصل شود که SRS تا حد امکان قابل تغییر است تا تغییرات در الزامات مشخص شده توسط کاربران نهایی در مراحل بعدی را نیز شامل شود. امکان تغییر نرم افزار بر اساس نیازها به صورت سیستماتیک و کنترل شده بخش بسیار مهمی از فرآیند مهندسی نیازمندی ها است.